home *** CD-ROM | disk | FTP | other *** search
/ Amiga Magazin: Amiga-CD 1996 March / Amiga-CD 1996 #3.iso / amiga_technologies / include_i / libraries / locale.i < prev    next >
Text File  |  1996-01-19  |  9KB  |  239 lines

  1.     IFND    LIBRARIES_LOCALE_I
  2. LIBRARIES_LOCALE_I    SET    1
  3. **
  4. **    $VER: locale.i 38.10 (22.12.92)
  5. **    Includes Release 40.16
  6. **
  7. **    locale.library interface structures and definitions
  8. **
  9. **    (C) Copyright 1991-1995 ESCOM AG
  10. **    All Rights Reserved
  11. **
  12.  
  13. ;---------------------------------------------------------------------------
  14.  
  15.     IFND EXEC_TYPES_I
  16.     INCLUDE "exec/types.i"
  17.     ENDC
  18.  
  19.     IFND EXEC_NODES_I
  20.     INCLUDE "exec/nodes.i"
  21.     ENDC
  22.  
  23.     IFND EXEC_LISTS_I
  24.     INCLUDE "exec/lists.i"
  25.     ENDC
  26.  
  27.     IFND EXEC_LIBRARIES_I
  28.     INCLUDE "exec/libraries.i"
  29.     ENDC
  30.  
  31.     IFND UTILITY_TAGITEM_I
  32.     INCLUDE "utility/tagitem.i"
  33.     ENDC
  34.  
  35. ;---------------------------------------------------------------------------
  36.  
  37. ; constants for GetLocaleStr()
  38. DAY_1         equ 1      ; Sunday
  39. DAY_2         equ 2      ; Monday
  40. DAY_3         equ 3      ; Tuesday
  41. DAY_4         equ 4      ; Wednesday
  42. DAY_5         equ 5      ; Thursday
  43. DAY_6         equ 6      ; Friday
  44. DAY_7         equ 7      ; Saturday
  45.  
  46. ABDAY_1      equ 8      ; Sun
  47. ABDAY_2      equ 9      ; Mon
  48. ABDAY_3      equ 10      ; Tue
  49. ABDAY_4      equ 11      ; Wed
  50. ABDAY_5      equ 12      ; Thu
  51. ABDAY_6      equ 13      ; Fri
  52. ABDAY_7      equ 14      ; Sat
  53.  
  54. MON_1         equ 15      ; January
  55. MON_2         equ 16      ; February
  56. MON_3         equ 17      ; March
  57. MON_4         equ 18      ; April
  58. MON_5         equ 19      ; May
  59. MON_6         equ 20      ; June
  60. MON_7         equ 21      ; July
  61. MON_8         equ 22      ; August
  62. MON_9         equ 23      ; September
  63. MON_10         equ 24      ; October
  64. MON_11         equ 25      ; November
  65. MON_12         equ 26      ; December
  66.  
  67. ABMON_1      equ 27      ; Jan
  68. ABMON_2      equ 28      ; Feb
  69. ABMON_3      equ 29      ; Mar
  70. ABMON_4      equ 30      ; Apr
  71. ABMON_5      equ 31      ; May
  72. ABMON_6      equ 32      ; Jun
  73. ABMON_7      equ 33      ; Jul
  74. ABMON_8      equ 34      ; Aug
  75. ABMON_9      equ 35      ; Sep
  76. ABMON_10     equ 36      ; Oct
  77. ABMON_11     equ 37      ; Nov
  78. ABMON_12     equ 38      ; Dec
  79.  
  80. YESSTR         equ 39      ; affirmative response for yes/no queries
  81. NOSTR         equ 40      ; negative response for yes/no queries
  82.  
  83. AM_STR         equ 41      ; AM
  84. PM_STR         equ 42      ; PM
  85.  
  86. SOFTHYPHEN   equ 43      ; soft hyphenation
  87. HARDHYPHEN   equ 44      ; hard hyphenation
  88.  
  89. OPENQUOTE    equ 45      ; start of quoted block
  90. CLOSEQUOTE   equ 46      ; end of quoted block
  91.  
  92. YESTERDAYSTR equ 47      ; Yesterday
  93. TODAYSTR     equ 48      ; Today
  94. TOMORROWSTR  equ 49      ; Tomorrow
  95. FUTURESTR    equ 50      ; Future
  96.  
  97. MAXSTRMSG    equ 51      ; current number of defined strings
  98.  
  99. ;---------------------------------------------------------------------------
  100.  
  101. ; OpenLibrary("locale.library",0) returns a pointer to this structure
  102.    STRUCTURE LocaleBase,LIB_SIZE
  103.     BOOL lb_SysPatches    ; TRUE if locale installed its patches
  104.  
  105. ;---------------------------------------------------------------------------
  106.  
  107. ; This structure must only be allocated by locale.library and is READ-ONLY!
  108.    STRUCTURE Locale,0
  109.     APTR   loc_LocaleName               ; locale's name
  110.         APTR   loc_LanguageName                ; language of this locale
  111.         STRUCT loc_PrefLanguages,4*10          ; preferred languages
  112.         ULONG  loc_Flags                       ; always 0 for now
  113.  
  114.         ULONG  loc_CodeSet                     ; always 0 for now
  115.         ULONG  loc_CountryCode                 ; user's country code
  116.     ULONG  loc_TelephoneCode           ; country's telephone code
  117.         LONG   loc_GMTOffset                   ; minutes from GMT
  118.         UBYTE  loc_MeasuringSystem             ; what measuring system?
  119.         UBYTE  loc_CalendarType                ; what calendar type?
  120.         STRUCT loc_Reserved0,2
  121.  
  122.         APTR   loc_DateTimeFormat              ; regular date & time format
  123.         APTR   loc_DateFormat                  ; date format by itself
  124.         APTR   loc_TimeFormat                  ; time format by itself
  125.  
  126.         APTR   loc_ShortDateTimeFormat         ; short date & time format
  127.         APTR   loc_ShortDateFormat             ; short date format by itself
  128.         APTR   loc_ShortTimeFormat             ; short time format by itself
  129.  
  130.         ; for numeric values
  131.         APTR   loc_DecimalPoint                ; character before the decimals
  132.         APTR   loc_GroupSeparator              ; separates groups of digits
  133.         APTR   loc_FracGroupSeparator          ; separates groups of digits
  134.         APTR   loc_Grouping                    ; size of each group
  135.         APTR   loc_FracGrouping                ; size of each group
  136.  
  137.         ; for monetary values
  138.         APTR   loc_MonDecimalPoint
  139.         APTR   loc_MonGroupSeparator
  140.         APTR   loc_MonFracGroupSeparator
  141.         APTR   loc_MonGrouping
  142.         APTR   loc_MonFracGrouping
  143.         UBYTE  loc_MonFracDigits            ; digits after the decimal point
  144.         UBYTE  loc_MonIntFracDigits         ; for international representation
  145.         STRUCT loc_Reserved1,2
  146.  
  147.         ; for currency symbols
  148.         APTR   loc_MonCS                    ; currency symbol
  149.         APTR   loc_MonSmallCS               ; symbol for small amounts
  150.         APTR   loc_MonIntCS                 ; internationl (ISO 4217) code
  151.  
  152.         ; for positive monetary values
  153.         APTR   loc_MonPositiveSign          ; indicate positive money value
  154.         UBYTE  loc_MonPositiveSpaceSep      ; determine if separated by space
  155.         UBYTE  loc_MonPositiveSignPos       ; position of positive sign
  156.         UBYTE  loc_MonPositiveCSPos         ; position of currency symbol
  157.         UBYTE  loc_Reserved2
  158.  
  159.         ; for negative monetary values
  160.         APTR   loc_MonNegativeSign          ; indicate negative money value
  161.         UBYTE  loc_MonNegativeSpaceSep      ; determine if separated by space
  162.         UBYTE  loc_MonNegativeSignPos       ; position of negative sign
  163.         UBYTE  loc_MonNegativeCSPos         ; position of currency symbol
  164.         UBYTE  loc_Reserved3
  165.    LABEL Locale_SIZEOF
  166.  
  167. ; constants for Locale.loc_MeasuringSystem
  168. MS_ISO      equ 0           ; international metric system
  169. MS_AMERICAN equ 1           ; american system
  170. MS_IMPERIAL equ 2           ; imperial system
  171. MS_BRITISH  equ 3           ; british SYSTEM
  172.  
  173. ; constants for Locale.loc_CalendarType */
  174. CT_7SUN equ 0   ; 7 days a week, Sunday is the first day
  175. CT_7MON equ 1   ; 7 days a week, Monday is the first day
  176. CT_7TUE equ 2   ; 7 days a week, Tuesday is the first day
  177. CT_7WED equ 3   ; 7 days a week, Wednesday is the first day
  178. CT_7THU equ 4   ; 7 days a week, Thursday is the first day
  179. CT_7FRI equ 5   ; 7 days a week, Friday is the first day
  180. CT_7SAT equ 6   ; 7 days a week, Saturday is the first day
  181.  
  182. ; constants for Locale.loc_MonPositiveSpaceSep and Locale.loc_MonNegativeSpaceSep
  183. SS_NOSPACE equ 0  ; cur. symbol is NOT separated from value with a space
  184. SS_SPACE   equ 1  ; cur. symbol IS separated from value with a space
  185.  
  186. ; constants for Locale.loc_MonPositiveSignPos and Locale.loc_MonNegativeSignPos
  187. SP_PARENS    equ 0  ; () surround the quantity and currency_symbol
  188. SP_PREC_ALL  equ 1  ; sign string comes before amount and symbol
  189. SP_SUCC_ALL  equ 2  ; sign string comes after amount and symbol
  190. SP_PREC_CURR equ 3  ; sign string comes right before currency symbol
  191. SP_SUCC_CURR equ 4  ; sign string comes right after currency symbol
  192.  
  193. ; constants for Locale.loc_MonPositiveCSPos and Locale.loc_MonNegativeCSPos */
  194. CSP_PRECEDES equ 0  ; currency symbol comes before value
  195. CSP_SUCCEEDS equ 1  ; currency symbol comes after value
  196.  
  197. ;* elements of the byte arrays pointed to by:
  198. ;*   Locale.loc_Grouping
  199. ;*   Locale.loc_FracGrouping
  200. ;*   Locale.loc_MonGrouping
  201. ;*   Locale.loc_MonFracGrouping
  202. ;* are interpreted as follows:
  203. ;*
  204. ;*    255     indicates that no further grouping is to be performed
  205. ;*    0       indicates that the previous element is to be repeatedly used
  206. ;*            for the remainder of the digits
  207. ;*    <other> the number of digits that comprises the current group
  208.  
  209. ;---------------------------------------------------------------------------
  210.  
  211. ; Tags for OpenCatalog()
  212. OC_TagBase         EQU TAG_USER+$90000
  213. OC_BuiltInLanguage EQU OC_TagBase+1     ; language of built-in strings
  214. OC_BuiltInCodeSet  EQU OC_TagBase+2     ; code set of built-in strings
  215. OC_Version         EQU OC_TagBase+3     ; catalog version number required
  216. OC_Language        EQU OC_TagBase+4     ; preferred language of catalog
  217.  
  218. ;---------------------------------------------------------------------------
  219.  
  220. ; Comparison types for StrnCmp()
  221. SC_ASCII    EQU 0
  222. SC_COLLATE1 EQU 1
  223. SC_COLLATE2 EQU 2
  224.  
  225. ;---------------------------------------------------------------------------
  226.  
  227. ; This structure must only be allocated by locale.library and is READ-ONLY!
  228.    STRUCTURE Catalog,LN_SIZE            ; for internal linkage
  229.         UWORD   cat_Pad                 ; to longword align
  230.         APTR    cat_Language            ; language of the catalog
  231.         ULONG   cat_CodeSet             ; currently always 0
  232.         UWORD   cat_Version             ; version of the catalog
  233.         UWORD   cat_Revision            ; revision of the catalog
  234.    LABEL Catalog_SIZEOF
  235.  
  236. ;---------------------------------------------------------------------------
  237.  
  238.         ENDC    ; LIBRARIES_LOCALE_I
  239.